<?php
/**
 * Created by PhpStorm.
 * User: xiaofeng
 * motto: 现在的努力是为了小时候吹过的牛逼！
 * Date: 2020/2/16
 * Time: 17:11
 */
declare(strict_types=1);
namespace app\common\business;
use app\common\lib\ClassArr;
use app\common\lib\sms\AliSms;
use app\common\lib\Num;
class Sms {
    public static function sendCode(string $phoneNumber,int $len,$type='ali'):bool {

        //我们需要生成短信验证码
        $code = Num::getCode($len);
        // 工厂模式
//        $type = ucfirst($type);//首字母大写
//        $class = "app\common\lib\sms\\".$type."Sms";
//        $sms = $class::sendCode($phoneNumber,$code);

        $classStats = ClassArr::smsClassStat();
        $classObj = ClassArr::initClass($type, $classStats);
        $sms =  $classObj::sendCode($phoneNumber,$code);
        if ($sms){
            // 需要把我们的短信验证码记录到redis 并且需要给出一个失效时间
            cache(config("redis.code_pre").$phoneNumber,$code,config("redis.code_expire"));
        }
        return true;
    }
}
